1. Technical Field
Systems and methods consistent with the present invention generally relate to techniques for executing object oriented computer programming code. More particularly, systems and methods consistent with the invention relate to executing code that invokes or relies on at least one pre-existing object.
2. Background Information
Developing software applications using object oriented computer programming code can get very complex. For example, an object oriented computer program may rely on operations of multiple pre-existing objects. The operation of such objects may refer to any fields, properties, or methods of an object of a certain class. Further, each object may be exemplars of classes from existing class libraries, classes created for other applications, etc. Thus, any time a user wants to execute code that relies on a pre-existing object's operation, the user needs to ensure that the code can access the possibly disparate objects from different sources and that the objects are properly running when the code is executed.
As a result, a user may need to exert significant time and effort into setting up a computing environment (e.g., by defining a project and/or by adding correct dependencies for the objects) to run the code. Conducting even simple tasks that rely on running objects may thus take a disproportionate amount of time. Such tasks may include testing code, modifying code, and learning an application program interface (API).
One approach for executing code that relies on a running object is to set up a limited environment to execute the code. This may include setting up a project, adding the right dependencies, entering the code, and then deploying the project. This approach, however, has several drawbacks. First, setting up the limited environment to perform a simple task can also take a disproportionate amount of time. Second, if the user makes even a slight change to the code, the user will need to redeploy the environment, thus wasting more computing resources. And if the change in code relies on additional objects that were not relied on before, then the user may need to set up and deploy a whole new environment having new dependencies for the additional objects. Finally, after finalizing the code in the limited environment, the user may need to set up a wholly different environment just to test the code.
There is thus a need for an improved process for executing code that invokes operations of objects.